草庐IT

c - 在winapi中拖放

全部标签

xml - VSTO 在 Excel 中拖放

我有一个VSTOExcel工作簿。在操作Pane中有一个TreeView,我希望能够将其中的项目拖放到Excel单元格中。TreeView中的数据存储为内存中的XML。将此XML转换为单元格值的方式取决于它在工作簿中的放置位置,因此我希望能够将XML放到工作簿上,然后在事件处理程序中对其进行解释,而不是在调用之前进行转换DoDragDrop().我发现可以将由制表符和回车符分隔的文本拖放到任务Pane中的单元格上,Excel会将其转换为单元格表格布局。如上所述,这不是我想要的。我还可以将XML片段转换为文本并将其拖放到工作簿中。然后在SheetChange处理程序中,我可以检查内容是否

c++ - 通过 WinAPI 打开/关闭/管理 Windows 8 应用程序

是否可以通过桌面程序中的WinAPI函数打开或管理所有Windows8应用(例如内置的邮件或新闻应用)?对于“管理”,我的意思是打开、关闭、对齐(向左和向右)或枚举Windows8应用程序。我知道应用程序可以注册特殊的URI方案,因此它们可以通过链接打开(并且可能通过ShellExecute()和相关函数),但如果它们不这样做怎么办?我刚刚在Win8应用程序开发博客中找到了AshwinNeedamangala的博客文章,其中介绍了使用C++、WinAPI和COM进行应用程序激活和自动化生命周期状态:http://blogs.msdn.com/b/windowsappdev/archiv

c++ - 创建拖放事件 C++

如何在后台使用C++WINAPI将文件从我的程序拖放到其他程序。我的程序必须在没有用户操作的情况下以编程方式执行此操作,没有可见效果,背景平滑。我对拖放技术不是很熟悉,到目前为止我明白我需要使用OLE拖放操作。 最佳答案 您可以查看此代码链接http://blogs.msdn.com/b/oldnewthing/archive/2004/12/06/275659.aspx然后要使用此代码,您可以在visualstudio中使用COMActiveX,如下所示//声明DropTarget类的单个实例CDropSourcecodrop;B

python - 仅针对某些应用程序使用 winAPI BitBlt 捕获窗口时出现问题

我整理了一个简单的python脚本,该脚本应该截取名称包含特定字符串的窗口的屏幕截图。我使用的代码如下,importwin32gui,win32ui,win32conimportPIL.ImagedefgetWindowHandle(name):windowList=[]win32gui.EnumWindows(lambdahwnd,wndList:wndList.append((win32gui.GetWindowText(hwnd),hwnd)),windowList)forpairinwindowList:ifnameinpair[0]:returnpair[1]returnNo

windows - 跟踪移动的桌面窗口 WinApi

我正在尝试跟踪移动的桌面应用程序窗口,以便我可以平移相应的透明覆盖窗口。目前,我使用SetWinEventHookHookEVENT_SYSTEM_MOVESIZEEND事件。在我的回调中,我使用目标应用程序窗口的新位置更新了我的叠加层的位置。这行得通,但这意味着在用户放开目标窗口的标题栏后,我的叠加层会跳来跳去。我希望我的叠加层能够在移动时跟踪目标窗口,而不是在它移动之后。我能想到的唯一方法是同时HookEVENT_SYSTEM_MOVESIZESTART事件。当START事件触发时,生成一个新线程来轮询目标窗口位置并更新我的覆盖位置。然后,当END事件触发时,终止轮询线程。这是一种

windows - 如何使用winapi获取列表框中项目的矩形

我使用的是VC6.0。当我右键单击列表框的项目时,我正在尝试编程以显示上下文菜单。但是现在弹出菜单可以显示在ListBox的rect中的任何位置,因为我只能获取ListBox的rect,而我不知道如何获取item的rect。我知道有一个宏ListView_GetSubItemRect似乎可以获取ListView项目的矩形。ListBox是否有类似的方法,或者有没有办法获取ListBox项目的宽度和高度,以便我可以计算矩形?我没有在msdn和google上找到一些有用的信息?谁能给我一些想法?谢谢。我当前的代码:voidMy_OnContextMenu(HWNDhwnd,HWNDhwnd

c++ - 通过 Winapi 以编程方式编辑 Windows 审核策略时出现权限错误

简短版本:我正在尝试编写一个C++程序,以在Windows8上启用进程创建日志记录。我知道这可以使用auditpol.exe来完成,但我想以编程方式进行。我的研究表明,唯一的方法是通过WindowsAPI命令AuditSetSystemPolicy,所以我写了一个调用这个函数的C++程序(见下文)。但是,该程序因权限问题而失败(错误代码1314)。我以管理员身份运行VisualStudio,我尝试在以管理员身份运行的命令提示符下执行该程序,但我仍然遇到错误。长版:以下程序采用GUIDstringdescribingtheProcessCreationSubcategory我想开始审核并

windows - WinAPI 宽字符串函数是否支持由多个代码点组成的字符

WinAPI宽字符串函数是否支持由多个代码点(所谓的代理项对)组成的字符?文档中有关于它的内容吗? 最佳答案 MSDN文章,SurrogatesandSupplementaryCharacters说:NoteWindows2000introducessupportforbasicinput,output,andsimplesortingofsupplementarycharacters.However,notallsystemcomponentsarecompatiblewithsupplementarycharacters.显然,

windows - 在 unix 中执行 win32 文件(使用 UpdateResource winapi)

我想这是不可能的,但我还是会问的。我有一个执行BeginUpdateResource/UpdateResource/EndUpdateResource的Windows应用程序我能以某种方式在Linux/Unix上执行吗?它在服务器端,因此无法运行GUI模拟器。 最佳答案 我不确定使用Wine可以实现什么,但如果您拥有要运行的应用程序的源代码,这可能是一种可行的方法。另见WillWinerunonlyunderX,orcanitrunincharactermode?.另一种选择是重写功能。

windows - F# 使用 WinForms 拖放 : DragDrop event of a control does not call the referenced member function

您知道为什么F#中的DragDrop事件在我的示例中无法正常工作吗?所有其他事件,如DragEnter、DragLeave、DragOver...都以相同的方式正常工作。只需编译此代码并进行尝试,将文件拖到表单中,然后在启动可执行文件的位置查看在控制台/终端中触发的事件。openSystemopenSystem.DrawingopenSystem.Windows.FormstypeMainForm(args:stringlist)asthis=//subclassinginheritForm()//controls-------------------letdragDropImage=